home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Magnum One
/
Magnum One (Mid-American Digital) (Disc Manufacturing).iso
/
d20
/
vmgr112.arc
/
VOTEMGR.DOC
< prev
next >
Wrap
Text File
|
1991-09-17
|
23KB
|
732 lines
------------------------------------------------------------------
votemgr 1.12
- a vote manager for fidonet systems -
Aug 29, 1991
USER MANUAL
Copyright (c) 1991-19xx Carlos Terre
All Rights Reserved.
Written by Carlos Terre
Documentation written by Carlos Terre
------------------------------------------------------------------
---------------
-2 WHAT'S NEW
---------------
* Some bug fixes, and some new features... Just smoothing!
* WARNING!!! Command line parsing has been changed!!!
Check your Batch files when upgrading!
---------------------
-1 ACKNOWLEDGEMENTS
---------------------
I owe Orlando Castillo (2:346/4) the idea of this program, his
help when debugging votemgr, and his enthusiasm that kept my
attention on the project. Thanks orlando! We did it ;-)
I want to thank all members of net 2:348 who helped
me test and debug votemgr.
VOTEMGR was first used in March 1991 when electing RC in
region 2:34
-----------------------
0 THE LEGAL BUSINESS
-----------------------
VOTEMGR is guaranteed only to take up space on your hard disk.
Use it at your own risk. No warranty is stated or implied. The
author shall not be responsible for any damages resulting from
it's use, directly or indirectly.
VOTEMGR unregistered version is distributed as a Freely
Available Copyrighted Program, provided it is used in a
NONCOMMERCIAL environment: You can use it as long as you do not
use it within a commercial environment. It doesn't matter if you
are making money by using it or not, if you are using it within
commercial walls, you may not use the noncommercial version. No
fee may be charged for distribution and the distribution archive
is not to be tampered with or altered in ANY way.
VOTEMGR cannot be distributed in a modified form of any sort.
VOTEMGR can no longer be repackaged for distribution.
Distribution file must not be changed in any way. No additional
files may be included and original files may not be modified.
While VOTEMGR unregistered version is freely available for
use in non-corporate environments, you can register your copy by
sending a donation to the author. I ask for $10.00, but if you
just can't aford it... we surely can arrange it! Don't waste your
time wondering how to send me your money: just enclose a bill in an
envelope (no matter what currency) and post it. I strongly encourage
everybody to register. You will only have to register once, since
your key will work with the next major release (2.00).
Registered users will have support.
Send donations to:
Carlos Terre
p/Compostela 25, 5
36201 VIGO (Spain)
You can contact me at the following network addresses:
Carlos Terre 2:343/108@fidonet
2:348/1.25@fidonet
-------------------------------------------
1 THE DISTRIBUTION ARCHIVE (VMGR112.ARJ)
-------------------------------------------
This archive should have included the following files:
VOTEMGR.DOC - The Documentation, you read it as we speak.
VOTEMGR.EXE - The Executable Program.
VOTEMGR.CTL - A Control File example.
VMGRUSER.DOC - A voters guide for using votemgr.
*.TXT - Sample TXT files.
-----------------
2 WHAT IT DOES
-----------------
VOTEMGR is meant to take charge of votings carried on at your
system. It is designed in such a way that "voters" can send
messages to it, the same way they send messages to AREAMGR,
AREAFIX, or FILEEFIX: voters actually "talk" to votemgr.
In return, votemgr will send messages to voters (if you decide
so) to keep them informed of possible errors or to, simply,
acknowledge correct ballot processing.
You can edit your own messages editing ASCII files that will
be defined in the control file.
Here is what "vote manager" will be up to:
SPECIFICATIONS:
o Up to 25 different votings at a time.
o Value added error control and result computation.
o Feedback messages to voters.
o Full control of receipt messages text.
o Full control of Dates and electoral periods.
o Logging of activities.
o Processed messages moving them to a backup directory
(*.MSG format).
o Backup copies of processed ballots kept apart.
o Results posted into standard packets for tossing in the area
of your choice.
o Errorlevels reported to DOS.
SPECIFICATIONS FOR EACH VOTING:
o Up to 100 different choices.
o Up to 100 validation keys for systems ("ALL" macro is OK)
o Up to 100 rejection keys for systems ("ALL" macro is OK)
o Full description of the election and results with TXTfiles.
o Public/Secret result reports.
o NULL votes controled.
o Full control of point systems' validation.
---------------------------------
3 DISK AND MEMORY REQUIREMENTS
---------------------------------
Anything will, most likely, do ;-)
Should you have trouble, drop me a message!
-----------------------------------
4 THE CONTROL FILE : VOTEMGR.CTL
-----------------------------------
In order to know your system configuration, and to define what
your votings will be about, you must edit a plain vanilla ASCII
file called VOTEMGR.CTL (actually, VOTEMGR.EXE can be renamed to
whatever you like best, and then the .CTL file must be renamed
too).
The .CTL file must be in the same directory as the .EXE file.
VOTEMGR.CTL structure can be devided in three groups:
. general options
. receipt text files
. election definition block structure
Each of these different groups defines different types of
parameters votemgr needs to work. Parameters are entered following
a KEYWORD, and order is not significant "most of the times".
Strings containing spaces must be linked with underscores '_'
Items enclosed in square brackets ([]) are optional
Directories no longer need be terminated with a backslash '\'
4.1 General Options
--------------------
4.1.1 USERCODE
USERCODE <1stname_lastname> [<regkey>]
If your copy is not registered, you must simply enter your
name. This parameter is mandatory.
4.1.2 ADDRESS
ADDRESS z:net/node[.point]
Your fidonet address. This parameter is mandatory.
4.1.4 NETMAIL
NETMAIL <path>
Your NET Mail directory (where *.MSG files area stored).
This parameter is mandatory.
4.1.5 WORKPATH
WORKPATH <path>
Directory where votemgr will store results and temporary
files. This directory defaults to the directory where
votemgr.exe is stored. This parameter is optional.
4.1.6 INBOUND
INBOUND <path>
Your inbound directory. This is where packets with results
will be created. This is the directory your echomail processor
should look for packets in. This parameter is optional.
4.1.7 ORIGINLINE
ORIGINLINE
<origin line>
Your origin line for votemgr echo messages containing
results. Note that this keyword instructs votemgr to read the
next line in the control file as the origin line, so no
comments should be placed in the line after the keyword
"originline". This parameter is optional.
4.1.8 MOVEPATH
MOVEPATH <path>
Default 'moving' directory. All messages addressed to
votemgr will be moved by default to this directory unless
other directory is later specified. This parameter is
optional.
4.1.9 LOGFILE
LOGFILE <file_spec>
Log file for logging votemgr activities.
4.1.10 STATUS
STATUS {pkhcsd}
Return receipt message status. Here you can set the status of
the messages that votemgr will send to voters. All you have to
do is build up a string with the letters of the status you
want activated:
p -> private
k -> kill
h -> hold
c -> crash
s -> sent
d -> direct
Note that if you don't want votemgr to send feedback
messages to voters you must flag them as SENT.
4.1.11 KILLPROCESSED
KILLPROCESSED
If you want votemgr to erase processed messages, place
this keyword in your control file. The default procedure is to
flag them RECEIVED. Note that those messages subject to be
moved will -NOT- be erased. This is: KillProcessed is
overridden by "move" keywords.
4.2 Receipt Text Files
-----------------------
These files should be plain vanilla ASCII texts.
4.2.1 ACTIVETXT
ACTIVETXT <file_spec>
This text is the main header of the body of the message
addressed to voters when they request information about active
votings held at your system.
4.2.2 CHOICESTXT
CHOICESTXT <file_spec>
This text is the main header of the body of the message
addressed to voters when they request information about the
valid choices for one particular voting held at your system.
Following this text, the list of valid choices for a
particular election will be displayed.
4.2.3 RECEIPTTXT
RECEIPTTXT <file_spec>
This text is the body of the message addressed to voters
when their ballot has been successfully processed by votemgr.
4.2.4 DUPLICATETXT
DUPLICATETXT <file_spec>
This text is the body of the message addressed to voters
when they try to vote twice and one ballot has already been
successfully processed by votemgr for one particular election.
Obviously, one person can only send one ballot to one
particular voting.
4.2.5 ERRVOTTXT
ERRVOTTXT <file_spec>
This text is the main header of the body of the message
addressed to voters when they make a mistake (or typo) when
they refer to a voting which is *not* defined at your system.
This text should explain that an error has ocurred, and
that they should send another message correcting the error.
Following this text, ACTIVETXT will be displayed; and
after it, the list of active votings held at your system.
4.2.6 ERRCHOICETXT
ERRCHOICETXT <file_spec>
This text is the main header of the body of the message
addressed to voters when they make a mistake (or typo) in
their ballot. This text should explain that an error has
ocurred, and that they should send another ballot correcting
the error.
Following this text, CHOICESTXT will be displayed; and
after it, the list of valid choices for the particular voting.
4.2.7 ERRVALTXT
ERRVALTXT <file_spec>
This text is the body of the message addressed to persons
who try to vote even though they are not validated.
4.2.8 TOOLATETXT
TOOLATETXT <file_spec>
This text is the body of the message addressed to voters
when their ballot is received too late, and therefore will
*not* be processed by votemgr.
This text should contain a message telling the voter to
contact votemgr supervisor.
4.2.9 TOOSOONTXT
TOOSOONTXT <file_spec>
This text is the body of the message addressed to voters
when their ballot is received too soon, and therefore will
*not* be processed by votemgr.
This text should contain a message telling the voter to
try again within the electoral period.
4.3 Election Definition Block Structure
----------------------------------------
This block can be repeated as many as 25 times, defining 25
different votings at your system.
4.3.1 DEFINE
DEFINE <electname>
Definition block start mark. <electname> MUST be a valid
DOS file name (max 8 chars). votemgr will use this name to
create temporary files related with the voting defined, in the
work or default directory.
DEFINE has its counterpart in ENDDEF, which is the block
end mark. Both must always be used!.
4.3.2 VALIDATE
VALIDATE <address [{address}]>
Validate statements allow you to specify who is allowed to
vote. You can write multiple addresses following one VALIDATE
statement, and you can use as many VALIDATE statements as you
need (provided no more than 100 addresses are specified in
total).
<address> can be either a particular address or a set of
addresses gathered by means of the ALL macro. ALL macro is
supported. When entering an address, you may specify ALL in
any, or all, address portions (the 4 valid address portions
are: Zone, Net, Node and Point).
Note that wildcarding will *NOT* auto-flow in a greater to
lesser direction, IN CASE YOU DON'T SPECIFY A RULE FOR LESSER
DIRECTION. That means that if you specify ALL in the Net
position, Node and Point will not be wildcarded, and will
default to 0 provided you don't write ANYTHING in the node and
point position (i.e. 2:ALL becomes 2:ALL/0.0; but if you enter
2:ALL/ALL "ALL" nodes in zone 2 will be wildcarded.).
The most general rule is, then, all:all/all.all which
validates whatever address you may think of.
This is a very powerfull feature, and should be used
together with the REJECT statement, explained below.
4.3.3 REJECT
REJECT <address [{address}]>
Reject statements allow you to specify who is *not*
allowed to vote. You can write multiple addresses following
one Reject statement, and you can use as many Reject
statements as you need (provided no more than 100 addresses
are specified in total).
This statement follows the same rules as VALIDATE, and is
intended for use with VALIDATE in order to make exceptions to
global VALIDATE statements. i.e.:
VALIDATE 2:343/ALL.0
REJECT 2:343/100 2:343/200 2:343/300
4.3.4 AREA
AREA <area_tag>
EchoMail Area TAG of the echomail conference for which
packets will be created in your inbound directory. This TAG
must be known to your echomail processor. If no TAG is
specified, pakects will not be created.
4.3.5 FROMDATE
FROMDATE <mm/dd/yyyy>
Date of start of ballot processing. Ballots received
previous to this date, will be ignored, and addressee will be
notified so he can vote again.
4.3.6 TODATE
TODATE <mm/dd/yyyy>
Last day of ballot processing. Ballots received after this
date will be ignored, and addressee will be notified so he can
know.
4.3.7 MOVEPATH
MOVEPATH <path>
Directory where ballots (and only ballots) of this
voting will be moved to.
4.3.8 PRIVATE
PRIVATE
Instructs votemgr to hide names and addresses when
reporting results, so the voting is considered private.
4.3.9 NULLOK
NULLOK
Instructs votemgr to accept NULL ballots (ballots with a
vote for an unknown choice). Any ballot for an unlisted choice
will be considered to be a "null" vote.
Otherwise, votemgr would generate an error message addressed
to the voter and ballot would not be computed.
4.3.9b UNLISTEDOK
UNLISTEDOK
Instructs votemgr to accept UNLISTED choices in ballots
(ballots with a vote for an unknown choice). Activate this
option if you want to accept unlisted choices -but still valid-
in ballots. Notice that if users don't type two unlisted choices
in the same way, two different entries will be produced when
reporting.
Otherwise, votemgr would generate an error message addressed
to the voter and ballot would not be computed.
4.3.10 INFOTXT
INFOTXT <file_spec>
Description of the election to be displayed in the active
votings list. This text should describe what the voting is
about and who is validated to vote.
4.3.11 RESULTTXT
RESULTTXT <file_spec>
This text will be the header for results. This text
defaults to INFOTXT if is left undefined.
4.3.12 CHOICES & ENDCHOICES
CHOICES
...
ENDCHOICES
CHOICES keyword starts the list of valid choices for the
voting. Only one choice can be defined per line. Choices MUST
not contain spaces ' ' but rather underscores '_'.
Up to 100 different choices can be defined for one
particular voting.
ENDCHOICES keyword finishes the list of valid choices.
For example:
CHOICES
yes
no
blank
ENDCHOICES
(we declare three valid choices for a voting: "yes", "no" and
"blank")
4.3.13 ENDDEF
ENDDEF
Voting Definition block END marker. NOTICE! YOU MUST
ALWAYS FINISH YOU VOTING DEFINITION BLOCK!!!
------------------------
5 COMMAND LINE SYNTAX
------------------------
Usage: VOTEMGR [ -scan ] [{[ -r <voting_name> ] ... }]
Items enclosed in [] are entirely optional.
Items enclosed in {} are a "list" of optional items.
Items enclosed in <> are parameters.
Switches:
* -scan
Instructs votemgr to scan your netmail directory
looking for messages addressed to votemgr. You should
include an external event and execute this command on
a daily basis -at the least-.
* -r <voting_name>
Instructs votemgr to create a report of the specified
voting. If the electoral period has not expired yet,
no packets will be created.
If electoral period has expired, then packets will be
created "once". A void file with extension .FLG will
be created in the work directory to flag that packets
have already been created.
-------------
6 EXAMPLES
-------------
This example relates to the included sample .CTL file:
votemgr -scan -r nec343
votemgr will scan your netmail for new ballots and will update
result files. Eventually, votemgr will create report packets for
tossing.
You could use a longer command line if you wanted to create
reports on more than one voting:
votemgr -scan -r nec343 -r encrypt -r moderato
As you can see, not much is to be said about executing votemgr
from the command line ;-)
-----------------
7 OUTPUT FILES
-----------------
votemgr creates files in the work directory to keep results
and account of ballots. These files have the name of the related
voting, and four different extensions: .VOT, .RES, .QUO, .FLG
7.1 .VOT
---------
.VOT keeps every processed and correct ballot for one
voting. It stores information about voters, and should be kept
protected, since this information should only be available to
votemgr coordinator.
7.2 .RES
---------
.RES is created when votemgr is run with the /r: option, and
is the list of results. This file is overwritten if votemgr is
run again with more information in the related .VOT file.
.RES is the same file that is posted in the (optional) echo
area to announce results, if and only if electoral period has
expired.
7.3 .QUO
---------
.QUO is created when votemgr is run with the /r: option, and
is the list of systems participating in the election. This is
the "quorum" file. This file is overwritten if votemgr is run
again with more information in the related .VOT file.
.QUO is the same file that is posted in the (optional) echo
area to announce participating systems, if and only if electoral
period has expired.
7.4 .FLG
---------
.FLG is created when votemgr is run with the /r: option, and
packets are created. This file is void, but acts as a semaphore
to sign that results have already been posted in the echoarea.
----------------
8 ERRORLEVELS
----------------
0: VOTEMGR Successful
5: VOTEMGR Error: Too few arguments
x: VOTEMGR Error: other errors
-------------------
9 CLOSING MATTER
-------------------
If you have any problems you can't fix or questions you can't
answer then please contact me via NetMail. I will always do my
best to support the software, but the unregistered version is, by
definition, un-supported. I will answer queries as time allows,
please be patient when awaiting a reply.
-------------------------------------------------------------------